package com.example.demo.entity;


import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.example.demo.common.BaseEntityImp;
import lombok.Data;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.stereotype.Component;

import java.io.Serializable;


@Data
@Component
@TableName("rules")
@Document(indexName = "rule")
public class Rule extends BaseEntityImp implements Serializable {

    @TableId
    private String uuid;

    /**
     * 数据源类型
     */
    private String datasourceType;

    /**
     * 数据源uuid
     */
    private String datasourceUuid;

    /**
     * 告警平台uuid
     */
    private String alarmPlatformUuid;

    /**
     * 规则名称
     */
    private String name;

    /**
     * 规则类型 1：sql 解析
     */
    private Integer ruleType;

    /**
     * 时间间隔 数值
     */
    private Integer timeValue;

    /**
     * 时间间隔 单位
     */
    private Integer timeUnit;

    /**
     * 报警输出类型 1：比例 2：数值 3：默认
     */
    private Integer alarmOutputType;

    /**
     * 是否有效 执行
     */
    private Boolean status;

    /**
     * 报警平台
     */
    private String alarmPlatform;

    /**
     * sql 内容
     */
    private String sqlContent;

    /**
     * 最后执行时间
     */
    private long lastExecutionTime;

    /**
     * 是否测试阶段
     */
    private Boolean isTest;
}
